Skip to content

Compact quota scheduler hints#811

Open
huangruiteng wants to merge 1 commit into
mainfrom
codex/quota-scheduler-hint-compaction
Open

Compact quota scheduler hints#811
huangruiteng wants to merge 1 commit into
mainfrom
codex/quota-scheduler-hint-compaction

Conversation

@huangruiteng

Copy link
Copy Markdown
Owner

Summary

  • compact the default quota should-run.scheduler_hint by moving local scheduler / Codex CLI / Claude loop details out of the hot path
  • add --include-scheduler-detail for explicit cold-path detail when a host/runtime needs the full policy packet
  • update local scheduler rendering and smoke coverage to consume the compact unchanged_poll summary while preserving reset token / RRULE semantics

Validation

  • python3 examples/quota-scheduler-hint-compaction-smoke.py
  • python3 examples/quota-scheduler-policy-smoke.py
  • python3 examples/quota-plan-smoke.py
  • python3 examples/codex-cli-local-scheduler-tick-smoke.py
  • python3 examples/quota-agent-scoped-user-gate-smoke.py
  • python3 examples/heartbeat-quota-flow-smoke.py
  • PYTHONPATH=. python3 -m loopx.cli ... quota should-run compact/detail probes
  • PYTHONPATH=. python3 -m loopx.cli --format json check --scan-path ...
  • git diff --check

@huangruiteng huangruiteng force-pushed the codex/quota-scheduler-hint-compaction branch from 5300940 to d07c885 Compare June 27, 2026 21:22
@huangruiteng

Copy link
Copy Markdown
Owner Author

Self-review complete. I do not see a blocking issue in this PR.

What I checked:

  • Default scheduler_hint keeps the hot-path reset semantics (codex_app.recommended_rrule, reset_policy.reset_token, initial RRULE) while moving local scheduler / Codex CLI / Claude loop policy detail behind explicit --include-scheduler-detail.
  • codex-cli-local-scheduler-tick now reads the compact codex_app + unchanged_poll fields while remaining compatible with older local_scheduler fixtures.
  • Public dashboard cadence contract now names scheduler_hint.unchanged_poll as the hot-path field and points full local scheduler detail at the opt-in cold path.

Validation run locally:

  • python3 examples/quota-scheduler-hint-compaction-smoke.py
  • python3 examples/quota-scheduler-policy-smoke.py
  • python3 examples/quota-plan-smoke.py
  • python3 examples/codex-cli-local-scheduler-tick-smoke.py
  • python3 examples/quota-agent-scoped-user-gate-smoke.py
  • python3 examples/heartbeat-quota-flow-smoke.py
  • PYTHONPATH=. python3 -m loopx.cli ... quota should-run compact/detail probes
  • PYTHONPATH=. python3 -m loopx.cli --format json check --scan-path ...
  • git diff --check

Scope note: this fixes the scheduler/reset-policy hot-path payload. Other large quota projection fields remain separate follow-up work.

@huangruiteng

Copy link
Copy Markdown
Owner Author

Findings:

  • [P1] The PR is currently not mergeable: GitHub reports mergeStateStatus=DIRTY and mergeable=CONFLICTING. Please rebase/resolve against current main, then rerun the focused quota scheduler smokes before merge.

Open questions / assumptions: I treated the scheduler detail removal as an intentional hot-path compaction with --include-scheduler-detail as the cold-path escape hatch.

Validation performed on the PR head before conflict resolution:

  • python3 examples/quota-scheduler-hint-compaction-smoke.py passed.
  • python3 examples/quota-scheduler-policy-smoke.py passed.
  • python3 examples/codex-cli-local-scheduler-tick-smoke.py passed.

Merge decision: hold until the branch conflict is resolved and the focused smokes are rerun on the rebased head.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant